home *** CD-ROM | disk | FTP | other *** search
/ Chip: 2005 Utilities / CHIP Utilities 2005 / CHIP Utilities 2005.iso / dosapps / freedos / doc / fdxms / history.txt < prev    next >
Encoding:
Text File  |  2003-07-10  |  7.7 KB  |  192 lines

  1. Development history of FDXMS:
  2.  
  3. Version 0.92.Oranges - 2003-07-10 - Martin Strömberg
  4.  
  5. - VDISK detection in check_vdisk corrected by Lixing Yuan.
  6. - Only call check_vdisk at installation time by Lixing Yuan.
  7.   (Evidently those two corrections to VDISK handling make SMARTDRV work
  8.     with FDXMS.)
  9.  
  10.  
  11. Version 0.91.Apples - 2003-02-08 - Martin Strömberg
  12.  
  13. - FDXMS now only warns if it can't disable the A20 line instead of
  14.     refusing to load (bug 1352).
  15. - INT15 parameter added.
  16.  
  17.  
  18. What's up with the version numbers this time? This time they are a
  19. tribute to SF writer Samuel R. Delany, <http://www.pcc.com/~jay/delany/>.
  20. He has written a book called Stars in My Pocket like Grains of Sand
  21. which is an amazing piece of work. But if you want to try his works, I
  22. suggest you try some of his lighter works (sentences spanning more
  23. than a page can be tiresome) like Babel-17 or the Neveryona series.
  24.  
  25.  
  26. Version 0.9.Sand - 2002-03-02 - Martin Strömberg
  27.  
  28. - Squeezed out some more bytes by rearranging xms_free_xms.
  29. - Squeezed out some more bytes in trace version by substituting test
  30.     with bt in xms_dispatcher.
  31. - Squeezed out some more bytes in validation of AH in xms_dispatcher.
  32. - Corrected not recognising the BIOS switch in the non-TRACE versions
  33.     (bug 880).
  34. - Corrected 386 detection by Ralf Quint and me.
  35. - Maximum XMS memory is 0xfcb0 KiB, not 0xffff KiB. Changed code to
  36.     reflect this. (Note that maximum XXMS memory is much larger.)
  37. - Use smsw instead of mov cr0 to detect protected mode.
  38. - Now fdxxms.sys has been tested with 512MiB.
  39. - Added PS parameter that modifies the A20 line switching code so
  40.     FDXMS works on PS/2 Model 30 (and perhaps other PS models)
  41.     (bug 753).
  42. - Added GEODE parameter that modifies the delay routine so FDXMS works
  43.     on National Semiconductor's Geode GX1 200MiHz processors (bug
  44.     886). 
  45. - Added DELAY parameter and using it in enable_a20 and disable_a20
  46.     (bug 1038).
  47. - Changed a lot of "or reg1, reg1" to "test reg1, reg1".
  48. - Removed BIOS_FLAG from the flags variable and added insertion of
  49.     near jmp to do_bios_move if the BIOS parameter was given.
  50.  
  51.  
  52. Version 0.8.Grains - 2001-07-29 - Martin Strömberg
  53.  
  54. - xms_move_xms: add illegal ovelap check in BIOS path.
  55. - Added a flags byte. 
  56. - Made the bios variable a bit in the flags variable.
  57. - Made the initialized variable a bit in the flags variable.
  58. - Really only initialise once by looking at said bit.
  59. - Corrected my erroneous correction of xms_query_free_xms (RBIL is a
  60.     little confusing here).
  61. - Minor adjustments to XMStest.c.
  62. - Corrected xms_query_free_xms which didn't return BL == 0xa if all
  63.     XMS memory is allocated.
  64. - Corrected xms_get_move_addr which could be fooled by large offsets
  65.     or sizes while verifying length was valid.
  66. - Proper copyrights added to cptest.c
  67. - Optimised away the redundant variable xms_size.
  68. - Added printout of how much XMS memory that was found.
  69. - Added an XXMS version (fdxxms.sys) supporting 4GB (4GiB untested,
  70.     but up to 384MiB tested).
  71. - Decreased size by using a register instead of immediate in
  72.     xms_free_xms and xms_dispatcher.
  73. - Made XMStest use a better seed for more randomness.
  74. - Watch out for AX=0xe801 in INT15 handler.
  75. - Properly clear the carry flag in INT15 handler on success.
  76.  
  77.  
  78. Version 0.7.Pocket - 2001-07-10 - Martin Strömberg
  79.  
  80. - Correct lookup of variable 'bios'. I inadvertently happened to use
  81.     the bios without the BIOS argument (cs: override was missing).
  82. - Added a call to INT15 AX=0xe801 to detect more memory.
  83. - Merged lock and used bytes, so bookkeeping size is now down to five. 
  84. - Simplified and corrected xms_query_free_xms.
  85. - Move some of the initialisation of the handle table to initialize in
  86.     preparation of adding the call to INT15 AX=0xe820.
  87. - Increased minimum number of handles to two due to the above change.
  88. - XMS test program by Tom Ehlert. I include the .EXE file for test
  89.     purposes unitl FDXMS is ready for prime time. Minor
  90.     improvements by me.
  91. - xms_move_xms without BIOS argument didn't work right for lengths not
  92.     evenly divisible by four (i. e. 2, 6, 10, ...) if source
  93.     address was below destination address.  
  94.  
  95.  
  96. Version 0.6.Stars - 2001-07-05 - Martin Strömberg
  97.  
  98. - Correction of merging code by Tom Ehlert.
  99. - Keep lock counter indicating lock in case of lock overflow by Tom
  100.     Ehlert. Hopefully corrected now. I messed up Tom's earlier
  101.     correction.
  102. - Restore a20 state in xms_move_xms in case of failure.
  103. - Don't uneccessarily enable a20 if it's already is enabled in
  104.     xms_move_xms.
  105. - Improved address moving verification which could be tricked with big
  106.     offsets in conventional ram by Tom Ehlert.
  107. - Now possible to allocate 0 sized EMB if there are handles available
  108.     (but no memory).
  109. - Minor updates to invalid NUMHANDLES option argument strings.
  110. - Now you can install FDXMS.SYS in a directory called FDXMS.SYS.
  111. - Handle ovelapping moves correctly. I'm not sure if BIOS does handle
  112.     overlapping moves correctly though. Feedback wanted!
  113. - Skip move altogether if move length is 0 by Tom Ehlert.
  114. - Skip move altogether if src == dest by Tom Ehlert.
  115.  
  116.  
  117. What's up with the version numbers? They are a tribute to Dead Can
  118. Dance <http://www.evo.org/html/group/deadcandance.html>, a superb
  119. music group. Their third album is called "Within the Realm of a Dying
  120. Sun" which was the first piece I heard by them. Check it out some
  121. time. 
  122.  
  123.  
  124. Version 0.5.Sun - 2001-06-13 - Martin Strömberg
  125.  
  126. - The TRACE_SEPERATOR argument was never implemented. Ooops! Don't go
  127.     looking for it.
  128. - Coalesce xms_realloc_umb, xms_reqest_umb and xms_release_umb into
  129.     one block to save memory by Tom Ehlert.
  130. - Keep lock counter indicating lock in case of lock overflow by Tom
  131.     Ehlert.
  132. - Now possible to compile in the trace code conditionally.
  133. - Detection of end of command line in DOZE corrected.
  134. - Inserted P8086 and P386 at strategic places so that it ought to fail
  135.     gracefully on a processor earlier than 386.
  136. - Check the size of moves to/from XMS. Idea from Tom Ehlert.
  137. - Report interface version as 2.0, which it is as XXMS is not
  138.     implemented, from Tom Ehlert.
  139. - Report driver version properly from Tom Ehlert.
  140. - Protect bios_gdt from reentrancy properly by Tom Ehlert.
  141. - Only copy 0x1000 words using BIOS call without enabling interrupts
  142.     by Tom Ehlert.
  143. - Debug option IFDEFed out for now.
  144. - Check the size of moves to/from conventional RAM.
  145.  
  146.  
  147. Version 0.4.Dying - 2001-05-13 - Martin Strömberg
  148.  
  149. - NOTE: The license has been changed to GPL version 2
  150.  
  151. - Using ax for jump to the proper function; thus no need to pop bx in
  152.     all functions anymore.
  153. - Localized most local labels.            
  154. - Command line arguments handling added.
  155. - TRACE argument added.
  156. - DEBUG argument added. Doesn't do anything though.
  157. - NUMHANDLES argument added.
  158. - Improved merging of adjacent free blocks by Tom Ehlert.
  159. - Made to work in protected mode environment (e. g. SICE) by calling
  160.     the BIOS by Tom Ehlert.
  161. - Removed limit of 16MiB in protected mode environment.
  162. - BIOS argument added to always use the BIOS.
  163. - Should be able to handle more than 32MiB now by Tom Ehlert.
  164.  
  165.  
  166. Version 0.3.Realm - 2001-04-21 - Martin Strömberg
  167.  
  168. - Validation of handle procedure added: handle_valid.
  169. - Use of handle_valid added to functions 0xa, 0xb, 0xc, 0xd and 0xf
  170. - Don't push _all_ registers in xms_move_xms.
  171. - Change XMS_NO_UMB_AVAILABLE to XMS_NOT_IMPLEMTED in xms_request_umb
  172.     by Bart Oldeman.
  173.  
  174.  
  175. Version 0.2.Within - 2001-04-15 - Martin Strömberg
  176.  
  177. - Corrected function 0xe.
  178.  
  179.  
  180. Version 0.11 - 2001-01-?? - Louis P. Santillan
  181.  
  182. - Correction of A20 switch code.
  183.  
  184.  
  185. Version 0.1 - 10/11.95
  186.  
  187. - initial version, uploaded for testing
  188. - still about 400 bytes bigger than HIMEM :(
  189. - poor feedback until now...
  190. - works with a lot of software, but Watcom Help doesn't work when run with
  191.   Norton Cache of Norton Utilities 8.0
  192.